package cn.aws360.boot.wechat.biz.service;

import cn.aws360.boot.data.api.pojo.request.PageQuery;
import cn.aws360.boot.data.api.pojo.response.PageResult;
import cn.aws360.boot.wechat.api.pojo.request.WxmCorpusQuery;
import cn.aws360.boot.wechat.api.pojo.request.WxmCorpusWrite;
import cn.aws360.boot.wechat.api.pojo.response.WxmCorpusModel;
import cn.aws360.boot.wechat.biz.domain.WxmCorpus;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * @author junnan
 */
public interface WxmCorpusService extends IService<WxmCorpus> {

    /**
     * 新增语料
     *
     * @param wxmCorpusWrite 新增语料参数
     * @return 是否成功
     */
    Boolean add(WxmCorpusWrite wxmCorpusWrite);

    /**
     * 修改语料
     *
     * @param wxmCorpusWrite 修改语料参数
     * @return 是否成功
     */
    Boolean edit(WxmCorpusWrite wxmCorpusWrite);

    /**
     * 删除语料
     *
     * @param ids 删除语料 ids
     * @return 是否成功
     */
    Boolean remove(String ids);

    /**
     * 查询语料详情
     *
     * @param id 查询语料 id
     * @return WxCorpusModel
     */
    WxmCorpusModel detail(Integer id);

    /**
     * 查询语料列表
     *
     * @param wxmCorpusQuery 查询语料参数
     * @return List<WxCorpusModel>
     */
    List<WxmCorpusModel> findList(WxmCorpusQuery wxmCorpusQuery);

    /**
     * 查询语料分页
     *
     * @param wxmCorpusQuery 查询语料参数
     * @param pageQuery      查询分页参数
     * @return PageResult<WxCorpusModel>
     */
    PageResult<WxmCorpusModel> findPage(WxmCorpusQuery wxmCorpusQuery, PageQuery pageQuery);

}
